home *** CD-ROM | disk | FTP | other *** search
- GEMM(3F) Last changed: 11-2-98
-
-
- NNAAMMEE
- SSGGEEMMMM, DDGGEEMMMM, CCGGEEMMMM, ZZGGEEMMMM - Multiplies a real or complex general
- matrix by a real or complex general matrix
-
- SSYYNNOOPPSSIISS
- Real
-
- CCAALLLL SSGGEEMMMM ((_t_r_a_n_s_a,, _t_r_a_n_s_b,, _m,, _n,, _k,, _a_l_p_h_a,, _a,, _l_d_a,, _b,, _l_d_b,, _b_e_t_a,,
- _c,, _l_d_c))
-
- Double precision
-
- CCAALLLL DDGGEEMMMM ((_t_r_a_n_s_a,, _t_r_a_n_s_b,, _m,, _n,, _k,, _a_l_p_h_a,, _a,, _l_d_a,, _b,, _l_d_b,, _b_e_t_a,,
- _c,, _l_d_c))
-
- Complex
-
- CCAALLLL CCGGEEMMMM ((_t_r_a_n_s_a,, _t_r_a_n_s_b,, _m,, _n,, _k,, _a_l_p_h_a,, _a,, _l_d_a,, _b,, _l_d_b,, _b_e_t_a,,
- _c,, _l_d_c))
-
- Double complex
-
- CCAALLLL ZZGGEEMMMM ((_t_r_a_n_s_a,, _t_r_a_n_s_b,, _m,, _n,, _k,, _a_l_p_h_a,, _a,, _l_d_a,, _b,, _l_d_b,, _b_e_t_a,,
- _c,, _l_d_c))
-
- IIMMPPLLEEMMEENNTTAATTIIOONN
- IRIX systems
-
- DDEESSCCRRIIPPTTIIOONN
- SSGGEEMMMM and DDGGEEMMMM multiply a real general matrix by a real general
- matrix.
-
- CCGGEEMMMM and ZZGGEEMMMM multiply a complex general matrix by a complex
- general matrix.
-
- These routines perform one of the matrix-matrix operations:
-
- _C <- _a_l_p_h_a _o_p(_A) or _o_p(_B) + _b_e_t_a _C
-
- where _o_p(_X) is one of the following:
-
- _o_p(_X) = _X
- _T
- _o_p(_X) = _X
- _H
- _o_p(_X) = _X (CCGGEEMMMM and ZZGGEEMMMM only)
-
- where
-
- * _a_l_p_h_a and _b_e_t_a are scalars
-
- * _A, _B, and _C are matrices
-
- * _o_p(_A) is an _m-by-_k matrix
-
- * _o_p(_B) is a _k-by-_n matrix
-
- * _C is an _m-by-_n matrix.
- _T
- * _X is the transpose of _x
- _H
- * _X is the conjugate transpose of _X.
-
- These routines have the following arguments:
-
- _t_r_a_n_s_a Character*1. (input)
- Specifies the form of op(A) to be used in the matrix
- multiplication, as follows:
-
- _t_r_a_n_s_a = 'N' or 'n': _o_p(_A) = _A
- _T
- _t_r_a_n_s_a = 'T' or 't': _o_p(_A) = _A
-
- _T
- _t_r_a_n_s_a = 'C' or 'c', _o_p(_A) = _A (SSGGEEMMMM and DDGGEEMMMM), or
- _H
- _o_p(_A) = _A (CCGGEEMMMM and ZZGGEEMMMM)
-
- _t_r_a_n_s_b Character*1. (input)
- Specifies the form of _o_p(_B) to be used in the matrix
- multiplication, as follows:
-
- _t_r_a_n_s_b = 'N' or 'n': _o_p(_B) = _B
-
- _T
- _t_r_a_n_s_b = 'T' or 't': _o_p(_B) = _B
-
- _T
- _t_r_a_n_s_b = 'C' or 'c': _o_p(_B) = _B (SSGGEEMMMM and DDGGEEMMMM), or
- _H
- _o_p(_B) = _B (CCGGEEMMMM and ZZGGEEMMMM)
-
- _m Integer. (input)
- Specifies the number of rows in matrix _o_p(_A) and in matrix
- _C. _m must be >= 0.
-
- _n Integer. (input)
- Specifies the number of columns in matrix _o_p(_B) and in
- matrix _C. _n must be >= 0.
-
- _k Integer. (input)
- Specifies the number of columns of matrix _o_p(_A) and the
- number of rows of matrix _o_p(_B). _k must be >= 0.
-
- _a_l_p_h_a First scalar factor. (input)
- SSGGEEMMMM: Real.
- DDGGEEMMMM: Double precision.
- CCGGEEMMMM: Complex.
- ZZGGEEMMMM: Double complex.
-
- _a Array of dimension (_l_d_a,_k_a). (input)
- SSGGEEMMMM: Real array.
- DDGGEEMMMM: Double precision array.
- CCGGEEMMMM: Complex array.
- ZZGGEEMMMM: Double complex array.
- When _t_r_a_n_s_a = 'N' or 'n', _k_a is _k; otherwise, it is _m.
- Contains the matrix _A.
-
- Before entry with _t_r_a_n_s_a = 'N' or 'n', the leading _m-by-_k
- part of array _a must contain matrix _A; otherwise, the
- leading _k-by-_m part of array _a must contain matrix _A.
-
- _l_d_a Integer. (input)
- Specifies the first dimension of _a as declared in the
- calling program.
- When _t_r_a_n_s_a = 'N' or 'n', _l_d_a >= MMAAXX(1,_m); otherwise, _l_d_a >=
- MMAAXX(1,_k).
-
- _b Array of dimension (_l_d_b,_k_b). (input)
- SSGGEEMMMM: Real array.
- DDGGEEMMMM: Double precision array.
- CCGGEEMMMM: Complex array.
- ZZGGEEMMMM: Double complex array.
- When _t_r_a_n_s_b = 'N' or 'n', _k_b is _n; otherwise, it is _k.
- Contains the matrix _B.
-
- Before entry with _t_r_a_n_s_b = 'N' or 'n', the leading _k-by-_n
- part of array _b must contain matrix _B; otherwise, the
- leading _n-by-_k part of array _b must contain matrix _B.
-
- _l_d_b Integer. (input)
- Specifies the first dimension of _b as declared in the
- calling program. When _t_r_a_n_s_b = 'N' or 'n', _l_d_b >= MMAAXX(1,_k);
- otherwise, _l_d_b >= MMAAXX(1,_n).
-
- _b_e_t_a Scalar factor. (input)
- SSGGEEMMMM: Real.
- DDGGEEMMMM: Double precision.
- CCGGEEMMMM: Complex.
- ZZGGEEMMMM: Double complex. When _b_e_t_a is supplied as 0, _c need
- not be set on input.
-
- _c Array of dimension (_l_d_c,_n). (input and output)
- SSGGEEMMMM: Real array.
- DDGGEEMMMM: Double precision array.
- CCGGEEMMMM: Complex array.
- ZZGGEEMMMM: Double complex array.
- Contains the matrix _C.
-
- Before entry, the leading _m-by-_n part of array _c must
- contain matrix _C, except when _b_e_t_a is 0; in which case, _c
- need not be set. On exit, the _m-by-_n result matrix
- overwrites array _c.
-
- _l_d_c Integer. (input)
-
- Specifies the first dimension of _c as declared in the
- calling program. _l_d_c >= MMAAXX(1,_m).
-
- NNOOTTEESS
- These routines are Level 3 Basic Linear Algebra Subprograms (Level 3
- BLAS).
-
- SSEEEE AALLSSOO
- This man page is available only online.
-